package cn.tedu.api;

import jdk.internal.org.objectweb.asm.tree.analysis.Value;

/**
 * @author: Dsi
 * @date: 2021/11/15 10:21
 * @description:该类用于包装类入门案例
 */
public class TestNumber {
    public static void main(String[] args) {
        Integer i1 = new Integer(5);
        Integer i11= Integer.valueOf(5);
        /*Integer有一种高效的效果，同时满足3个条件
          1、是Integer这个类
          2、使用的创建方式是valueOf()
          3、包装对的基本类型的值值在-128-127之间
          满足这三个条件，相同的数据只会存一次，后续再存都是使用的之前存的值*/
        Integer i2 = new Integer(127);
        Integer i22= Integer.valueOf(127);

        Integer i3=Integer.valueOf(300);
        Integer i4=Integer.valueOf(300);

        System.out.println(i1==i11);//false
        System.out.println(i2==i22);//false
        System.out.println(i1==i2);//false
        System.out.println(i4==i3);//false


        Double d1=new Double(4);
        Double d2=Double.valueOf(5);
        Double d22=Double.valueOf(5);
        Double d3=Double.valueOf("15");
        /*只有Integer才有高效效果，Double没有*/
        System.out.println(d2==d22);//false
        System.out.println(d1);
        System.out.println(d2);
        System.out.println(d3);


        System.out.println(i2.parseInt("400")+2);//402
        System.out.println(d2.parseDouble("400")+1.1);

    }

}
